/*
 * Logger.cpp
 *
 *  Created on: 16/09/2012
 *      Author: rodrigo
 */

#include "Logger.h"



void Logger::initLog() {
//    FILE *archivo;
    string FileName="log2.txt";
    archivo=fopen(FileName.c_str(),"a+");
    if(archivo==NULL){
    	archivo=fopen(FileName.c_str(),"w");
        if(archivo==NULL){
            perror("no se pudo crear el archivo!!");
        }
    }
    fputs("-------------------------------------------------------\n",archivo);

    time_t t = time(0);   // get time now
    struct tm * now = localtime( & t );
    int dia=now->tm_mday;
    string encabezado="Comienzo del programa:  ";
    fputs(encabezado.c_str(),archivo);
    encabezado=""+intToString(dia);
    dia=now->tm_mon;
    encabezado=encabezado+"/"+intToString(dia);
    dia=now->tm_year;
    encabezado=encabezado+"/"+intToString(dia);
    dia=now->tm_hour;
    encabezado=encabezado+"  "+intToString(dia);
    dia=now->tm_min;
    encabezado=encabezado+":"+intToString(dia)+"\n";
    fputs(encabezado.c_str(),archivo);
    //fclose(archivo);


    // TODO Auto-generated constructor stub

}
Logger::Logger(){

}

Logger::~Logger() {
	fclose(archivo);
}

FILE *Logger::archivo;

 void Logger::escribir(string info, int severity){

	 switch(severity){
	 case 1:fputs("",archivo);
	 	 	 break;
	 case 2:fputs("alert: ",archivo);
	 	 	 break;
	 case 3: fputs("ERROR: ", archivo);
	 }
	 time_t t = time(0);
     struct tm * now = localtime( & t );
     string in=intToString(now->tm_hour)+":"+intToString(now->tm_min)+":"+intToString(now->tm_sec)+" : "+info+"\n";
     fputs(in.c_str(),archivo);


}


string Logger::intToString(int number){
    ostringstream convert;
    convert << number;
    return convert.str();
}
